-
Notifications
You must be signed in to change notification settings - Fork 67
[GEN][ZH] Fix various memory leaks #623
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Small update, found that production items in a production queue could leak if there were production queues in progress. Selling or destroying the building appeared to deallocate the queue normally. |
3da01e7
to
269babe
Compare
Rebased with Main and added a new leak fix, Tank like vehicles were leaking particle systems when their W3DTankDraw object was destroyed. |
Small update where some references could be removed too early and some W3D asset manager glue was missing on mech models. |
79535d8
to
f483373
Compare
GeneralsMD/Code/GameEngineDevice/Source/W3DDevice/GameClient/Drawable/Draw/W3DTankDraw.cpp
Outdated
Show resolved
Hide resolved
21a8f33
to
2fe6a0d
Compare
Removed the MeshGeometryClass change as it was not necessary in the end. The rest should be good to go now. |
DisplayString instances may be leaking all over assert( m_stringList == NULL ); will throw in DisplayStringManager DTOR if you play around with debug keys and exit game, appears to be m_benchmarkDisplayString instance it's holding on to as it contains "FPS 31.25" |
2fe6a0d
to
ed3592c
Compare
Rebased with Main after the recent inclusions. Just need to look at what Tomson26 found today. |
1275b51
to
3d610a2
Compare
Rebased with recent Main. |
3d610a2
to
53ffd12
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The commit titles and comments need some work. The way things are written is not always consistent, too complicated, not concise. Commit titles do not end on a dot. Comments can end on a dot (because they can have multiple sentences)
Generals/Code/GameEngineDevice/Source/W3DDevice/GameClient/W3DDisplay.cpp
Outdated
Show resolved
Hide resolved
Generals/Code/GameEngineDevice/Source/Win32Device/Common/Win32LocalFileSystem.cpp
Show resolved
Hide resolved
Generals/Code/GameEngineDevice/Source/Win32Device/Common/Win32LocalFileSystem.cpp
Outdated
Show resolved
Hide resolved
Generals/Code/GameEngineDevice/Source/W3DDevice/GameClient/Drawable/Draw/W3DLaserDraw.cpp
Show resolved
Hide resolved
53ffd12
to
5211353
Compare
Updated based on recommendations. These commits and their comments were rather old now and before i started getting more of a hang of it. :P |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some more notes.
Generals/Code/GameEngineDevice/Source/Win32Device/Common/Win32BIGFileSystem.cpp
Outdated
Show resolved
Hide resolved
5211353
to
34bd081
Compare
Should be in a good place now, tweaked all the commit titles again. |
Generals/Code/GameEngineDevice/Source/Win32Device/Common/Win32BIGFileSystem.cpp
Outdated
Show resolved
Hide resolved
34bd081
to
f5f0f26
Compare
Should be good now, i will break out any others that i find into their own PR's in future. |
Merge with Rebase
Fix freeing some reference counted pointers so that underlying memory is properly freed.
Also fix the cleanup in some classes that were not clearing dependent objects.
Will be checking for more so left this as draft for the moment.EDIT: This should be good to merge now, the memory leaks it fixes are some of the most prominent that i came across.
Fixes: